* {
    margin: 0;
    padding: 0;
}

body {
    background-color: rgba(35, 35, 35, 1.00);
}

#hexGrid {
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    padding: 0.866% 0;
    font-family: 'Raleway', sans-serif;
    font-size: 15px;
}

#hexGrid:after {
    content: "";
    display: block;
    clear: both;
}

.hex {
    position: relative;
    list-style-type: none;
    float: left;
    overflow: hidden;
    visibility: hidden;
    outline: 1px solid transparent;
    /* fix for jagged edges in FF on hover transition */
    -webkit-transform: rotate(-60deg) skewY(30deg) translatez(-1px);
    -ms-transform: rotate(-60deg) skewY(30deg) translatez(-1px);
    transform: rotate(-60deg) skewY(30deg) translatez(-1px);
}

.hex * {
    position: absolute;
    visibility: visible;
    outline: 1px solid transparent;
    /* fix for jagged edges in FF on hover transition */
}

.hexIn {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    background-color: #fff !important;
    overflow: hidden;
    -webkit-transform: skewY(-30deg) rotate(60deg);
    -ms-transform: skewY(-30deg) rotate(60deg);
    transform: skewY(-30deg) rotate(60deg);
}


/*** HEX CONTENT **********************************************************************/

.hex img {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}

.hex h2,
.hex p {
    width: 102%;
    left: -1%;
    /*preventlineontherightwherebackgrounddoesn'tcoverimage*/
    padding: 5%;
    box-sizing: border-box;
    background-color: rgba(42, 88, 768, 0.8);
    font-weight: 300;
    color: #fff;
    -webkit-transition: transform .2s ease-out, opacity .3s ease-out;
    transition: transform .2s ease-out, opacity .3s ease-out;
    -moz-transition: transform .2s ease-out, opacity .3s ease-out;
    -ms-transition: transform .2s ease-out, opacity .3s ease-out;
    -o-transition: transform .2s ease-out, opacity .3s ease-out;
}

.hex h2 {
    bottom: 50%;
    padding-top: 50%;
    font-size: 1.5em;
    z-index: 1;
    -webkit-transform: translateY(-100%) translatez(-1px);
    -ms-transform: translateY(-100%) translatez(-1px);
    transform: translateY(-100%) translatez(-1px);
}

.hex h2:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 45%;
    width: 10%;
    text-align: center;
    border-bottom: 1px solid #fff;
}

.hex p {
    top: 50%;
    padding-bottom: 50%;
    -webkit-transform: translateY(100%) translatez(-1px);
    -ms-transform: translateY(100%) translatez(-1px);
    transform: translateY(100%) translatez(-1px);
}


/*** HOVER EFFECT  **********************************************************************/

.hexIn:hover h2,
.hexIn:focus h2,
.hexIn:hover p,
.hexIn:focus p {
    -webkit-transform: translateY(0%) translatez(-1px);
    -ms-transform: translateY(0%) translatez(-1px);
    transform: translateY(0%) translatez(-1px);
}


/*** SPACING AND SIZING *****************************************************************/

@media (min-width:1201px) {
    .hex {
        width: 15.83%;
        /* = (100-5) / 6 */
        padding-bottom: 18.278%;
        /* =  width / sin(60deg) */
    }
    .hex:nth-child(11n+7),
    .hex:nth-child(11n+8),
    .hex:nth-child(11n+9),
    .hex:nth-child(11n+10),
    .hex:nth-child(11n+11){
        margin-top: -3.134%;
        margin-bottom: -3.134%;
        -webkit-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        -ms-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        transform: translateX(50%) rotate(-60deg) skewY(30deg);
    }
    .hex:nth-child(11n+7):last-child,
    .hex:nth-child(11n+8):last-child,
    .hex:nth-child(11n+9):last-child,
    .hex:nth-child(11n+10):last-child,
    .hex:nth-child(11n+11):last-child
    {
        margin-bottom: 0;
    }
    .hex:nth-child(11n+7) {
        clear: left;
        margin-left: 0.5%;
    }
    .hex:nth-child(11n+12) {
        clear: left;
    }
    .hex:nth-child(11n+7) {
        clear: left;
        margin-left: 0.5%;
    }

    .hex:nth-child(11n+2),
    .hex:nth-child(11n+8) {
        margin-left: 1%;
        margin-right: 1%;
    }
    .hex:nth-child(11n+3) ,
    .hex:nth-child(11n+4) ,
    .hex:nth-child(11n+5),
    .hex:nth-child(11n+9) ,
    .hex:nth-child(11n+10) {
        margin-right: 1%;
    }


}

@media (max-width: 1200px) and (min-width:901px) {
    /* <- 4-3  hexagons per row */
    .hex {
        width: 24.25%;
        /* = (100-3) / 4 */
        padding-bottom: 28.001%;
        /* =  width / sin(60deg) */
    }
    .hex:nth-child(7n+5),
    .hex:nth-child(7n+6),
    .hex:nth-child(7n+7) {
        margin-top: -6.134%;
        margin-bottom: -6.134%;
        -webkit-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        -ms-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        transform: translateX(50%) rotate(-60deg) skewY(30deg);
    }
    .hex:nth-child(7n+5):last-child,
    .hex:nth-child(7n+6):last-child,
    .hex:nth-child(7n+7):last-child {
        margin-bottom: 0;
    }
    .hex:nth-child(7n+2),
    .hex:nth-child(7n+6) {
        margin-left: 1%;
        margin-right: 1%;
    }
    .hex:nth-child(7n+3) {
        margin-right: 1%;
    }
    .hex:nth-child(7n+8) {
        clear: left;
    }
    .hex:nth-child(7n+5) {
        clear: left;
        margin-left: 0.5%;
    }
}

@media (max-width: 900px) and (min-width:769px) {
    /* <- 3-2  hexagons per row */
    .hex {
        width: 32.666%;
        /* = (100-2) / 3 */
        padding-bottom: 37.720%;
        /* =  width / sin(60) */
    }
    .hex:nth-child(5n+4),
    .hex:nth-child(5n+5) {
        margin-top: -8.564%;
        margin-bottom: -8.564%;
        -webkit-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        -ms-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        transform: translateX(50%) rotate(-60deg) skewY(30deg);
    }
    .hex:nth-child(5n+4):last-child,
    .hex:nth-child(5n+5):last-child {
        margin-bottom: 0;
    }
    .hex:nth-child(5n+4) {
        margin-right: 1%;
        margin-left: 0.5%;
    }
    .hex:nth-child(5n+2) {
        margin-left: 1%;
        margin-right: 1%;
    }
    .hex:nth-child(5n+6) {
        clear: left;
    }
}

@media (max-width: 768px) {
      /* <- 4-3  hexagons per row */
      .hex {
        width: 24.25%;
        /* = (100-3) / 4 */
        padding-bottom: 28.001%;
        /* =  width / sin(60deg) */
    }
    .hex:nth-child(7n+5),
    .hex:nth-child(7n+6),
    .hex:nth-child(7n+7) {
        margin-top: -6.134%;
        margin-bottom: -6.134%;
        -webkit-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        -ms-transform: translateX(50%) rotate(-60deg) skewY(30deg);
        transform: translateX(50%) rotate(-60deg) skewY(30deg);
    }
    .hex:nth-child(7n+5):last-child,
    .hex:nth-child(7n+6):last-child,
    .hex:nth-child(7n+7):last-child {
        margin-bottom: 0;
    }
    .hex:nth-child(7n+2),
    .hex:nth-child(7n+6) {
        margin-left: 1%;
        margin-right: 1%;
    }
    .hex:nth-child(7n+3) {
        margin-right: 1%;
    }
    .hex:nth-child(7n+8) {
        clear: left;
    }
    .hex:nth-child(7n+5) {
        clear: left;
        margin-left: 0.5%;
    }
}

